#ifndef SERVERAPP_H
#define SERVERAPP_H

#include <string>
#include "CredentialManager.h"
#include "ZKPManager.h"
#include "DualSignature.h"
#include "BeaconManager.h"
using namespace std;

struct Hash {};
struct Signature {};

class ServerApp {
public:
    Credential issueCredential(PublicKey sm2_pk, PublicKey pq_pk, string user_id) { return Credential{}; }
    bool verifyLogin(Credential cred, ZKPProof pi, Beacon beacon) { return true; }
    bool verifyTicketOrder(Credential cred, Hash m, Signature sig_sm2, Signature sig_pq) { return true; }
};

#endif // SERVERAPP_H
